import store from '@/store'
export default {
  inserted(el, binding, vnode) {
    const value = binding.value // 获取页面绑定值
    let auths = store.getters && store.getters['routes/auths'] // 用户权限数组
    if (auths === undefined || auths === null) { // 若是后台没有返回auths或者为null 则认为此用户没有任何权限
      auths = []
    }
    if (value && value instanceof Array && value.length > 0) {
      let hasPermission = false
      /* 判断value是否存在于用户权限数组*/
      hasPermission = auths.some(role => {
        return value.includes(role)
      })
      if (!hasPermission) {
        el.parentNode && el.parentNode.removeChild(el) // 移除
      }
    } else {
      // 若是没有设置或者设置错误 则直接展示操作，无需throw 异常
      // throw new Error(`need roles! Like v-auth="['add','put']"`)
    }
  }
}
